Skip to main content
Version: 5.2.0.0

Installation Juno

Introduction​

Juno enables optimal usage of Orchestra in a cloud-based environment. The goal of this environment is to connect multiple local networks to a global cloud infrastructure using Orchestra. Juno is a lightweight implementation of Orchestra that operates within a local system while communicating with a main Orchestra installation in the cloud.

Use Cases​

The mechanism can be utilized in various scenarios and is not limited to a cloud environment. To illustrate the functionality of Juno with Orchestra, consider the following use case:

  1. Precondition: An Orchestra installation (or multiple installations in the case of a cluster or cell system) is active within a network. This network may be a cloud environment or a local corporate environment.

  2. Problem: Your organization operates multiple locations that need to share information with each other. These locations are not interconnected via a VPN or any other means. Orchestra should facilitate this communication. Certain channels must connect systems in the locations’ local networks to Orchestra.

  3. Solution: Orchestra provides a lightweight local application that can be easily connected to an Orchestra installation in another network. This component can be installed quickly and is managed via the Orchestra Monitor. This application is known as Juno. Juno functions nearly as a complete Orchestra, allowing you to shift any desired channel onto a Juno installation, regardless of the scenario or Orchestra node.

  4. Conclusion: The mechanism is highly flexible, as multiple Juno instances can connect to Orchestra. This design opens up numerous possibilities. A typical system architecture might resemble the following diagram:

Use case for a system of Orchestra and Juno instances

warning

Orchestra Juno is not designed to function in conjunction with the LTA (Long Time Archive) on the integrated Derby database. Using this setup may result in undesired behaviors due to the limitations of the underlying technology.

System Requirements​

The system requirements are heavily influenced by the specific functions Juno is executing. If Juno is only tasked with running a single channel or simple scenario, a host with modest performance is adequate. However, for more complex scenarios involving mappings and pre-processing, it may be necessary to allocate additional resources to your host.

ComponentJuno DevelopmentJuno Production
Processor typeDual-Core, AMD or similarQuad-Core, AMD or similar
Processor speed>= 2 GHz>= 2 GHz
RAM>= 4 GB>= 6 GB
Disk space (Juno only)> 10 GB> 100 GB
Disk space (Archive/Protocol files)-> 50 GB
note

The system requirements depend significantly on the Juno use case. A minimal setup is recommended for environments with low system load and minimal persistence on Juno. If increased persistence is required (volatile vs. persistent), RAM and disk space allocations should be upgraded accordingly.

Installation​

Orchestra Juno can be executed directly as a command line tool. Ensure the juno-artifact has been extracted to the local installation directory before proceeding with the following steps.

  1. Download Juno from the Orchestra Server and extract the files.
  2. Configure the environment settings.
  3. Configure the logging properties.
  4. Run Juno.

Adjust These Values​

Before using Orchestra Juno, adjust the environment settings in the file startscripts/orchestra_env.bat (or orchestra_env.sh for Linux).

SettingUsageDefaultPossible Values
ORC_HOMEOverrides the default value if not empty. Defines the folder where Orchestra is located (sub-folders include themes, WEB-INF, etc.).Empty, uses a relative path "./orchestra".Any path, relative or absolute, e.g., ORC_HOME="C:\Orchestra Designer\4.16.0.0\orchestra".
Do not forget the double quotation marks if the path includes spaces.
ORC_JAVA_HOMEOverrides the default value if not empty. Defines the path to the Java folder for the Orchestra version being used.Empty; automatically retrieves the Java version from the sub-directory "Java" or subsequently from the Windows registry.Any path, relative or absolute, e.g., "C:\Program Files\Java\jre8".
Don't forget the double quotation marks if the path includes spaces.
CMDLINE_OPTSUncomment this line.Not used. Juno starts in proxy mode.--enableStandaloneUse
JVMMSInitial memory pool size in MB.256 MB
JVMMXMaximum memory pool size in MB.4 GB
JVMSSThread stack size in KB.4000

Configuration of Orchestra Logging​

The logging configuration properties are stored in the following file:

<installation dir>/base/classes/logging.properties

Adjust these values:

  • java.util.logging.FileHandler.pattern = ../../logs/orchestra_%g.mlog
  • .level = WARNING
note
  • The directory must exist, and Juno requires write permissions to it.
  • Use forward slashes instead of backslashes for the path.
  • orchestra_%g.mlog is the name format for the log files.
  • The parameter %g generates the numerical suffix for the log files.
  • The .level parameter specifies the granularity of logging. We recommend retaining the value WARNING.

Other log level values include:

LevelDescription
SEVEREIndicates only serious failures.
WARNINGIndicates potential issues as well.
INFOIndicates informational messages.
CONFIGIndicates static configuration messages.
FINE, FINER, FINESTIndicates detailed messages, including every single message.

Configuration of Derby Logging​

Derby database logging can also be customized. To configure the Derby properties, edit the file:

<installation dir>/startscripts/<OS>/derby.properties

The following properties are predefined:

NameDefaultDescription
derby.stream.error.stylerollingFileSetting this property to rollingFile (the only supported value) ensures Derby creates up to 10 rolling files named derby-0.log, derby-1.log, and continuing to derby-9.log, each with a maximum length of 1,024,000 bytes. You can override these defaults by adjusting one or more properties.
derby.stream.error.rollingFile.limit8,388,608Specifies the file size limit in bytes for each rolling log file before it rolls over to the next file, applicable if derby.stream.error.style is set to rollingFile.
derby.stream.error.rollingFile.count10Specifies the maximum number of rolling log files permitted before the oldest file is deleted when rolling to the next file, applicable if derby.stream.error.style is set to rollingFile.
note
  • To implement changes, you need to restart Orchestra.
  • You can restore the default Derby settings by deleting the derby.properties file.
  • For more details on additional parameters, refer to Derby-Docs (apache.org).

Optional: Choice of Operating Mode​

Orchestra Juno can be configured to operate either as a command line tool or as a Windows service.

Juno as a Command Line Tool​

No additional steps are required for Juno to run as a command line tool.

Installation of the Windows Service​

To function as a Windows service, Orchestra Juno utilizes the Apache Commons Daemon, which enables Java applications to run as Windows services. For more details about this daemon, please refer to the Apache documentation.

The installation and uninstallation of the service can be accomplished with the following scripts located in the startscripts/WindowsService folder:

  • juno_service_32bit.cmd for a service in 32-bit environments
  • juno_service_64bit.cmd for a service in 64-bit environments
note

Based on your Windows installation, select the appropriate 32-bit or 64-bit executable. Be sure to open a command line with "Run as Administrator," as administrator privileges are essential for service installation.

Available commands:

  • juno_service_<bit>.cmd install to install Juno as a service.
  • juno_service_<bit>.cmd uninstall to uninstall the Juno service.
  • juno_service_<bit>.cmd update to update the Juno service.

Starting Orchestra Juno​

To start Orchestra Juno, double-click on orchestra_juno.cmd (or orchestra_juno.sh) in the startscripts folder.
Once startup is complete, the Juno Monitor will be accessible at the URL http://localhost:8090/monitor/.